Thursday, May 10, 2007

InterfaceCollision.java

InterfaceCollision.java

interface I1 {
void f();
}
interface I2 {
int f(int i);
}
interface I3 {
int f();
}

class C1 {
public int f() { return 1; }
}

class C2 implements I1, I2 {
public void f() {}
public int f(int i) { return 1; } // overloaded
}

class C3 extends C1 implements I2 {
public int f(int i) { return 1; } // overloaded
}

class C4 extends C1 implements I3 {
// identical, no problem.
}

// The following are illegal. Methods differ only
// by return type:

// class C5 extends C implements I1 {}

// interface I4 extends I1, I3 {}

Tag: Study Code Program Java

No comments:

Post a Comment